package 笔试.字节;


import java.util.Scanner;

/**
 * @author:谢君臣
 * @Date:2021/8/24-9:24
 * @version:1.0
 * @function:
 */
public class Main1801 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int t = scanner.nextInt();
        while (t>0){
            t--;
            int n = scanner.nextInt();
            int k = scanner.nextInt();
            int d1 = scanner.nextInt();
            int d2 = scanner.nextInt();
            if(n % 3 != 0){
                System.out.println("no");
                continue;
            }
            if (n-k==0&&d1!=d2) System.out.println("No");
            else check(n-k,d1,d2);
        }
    }

    private static void check(int i, int d1, int d2) {
        if (d1+d2==i)//b最大
            System.out.println("Yes");
        else if (d1==d2||d1==i) //b最小 AC相等
            System.out.println("Yes");
        else if (2*d1-d2==i||2*d2-d1==i) //b最小 AC不相等
            System.out.println("Yes");
        else if(d1+2*d2==i||d2+2*d1==i)  // b为中间值
            System.out.println("Yes");
        else System.out.println("No");

    }

}
